From bf39d68ed80a20770db29e2285966d1139c175dc Mon Sep 17 00:00:00 2001 From: "kaf24@firebug.cl.cam.ac.uk" Date: Thu, 1 Jun 2006 18:30:28 +0100 Subject: [PATCH] [SECURITY] Allow domid and ssidref args to get_decision in util/security.py to be either strings or ints (previously only strings would work due to the underlying call to lowlevel.acm). Signed-off-by: Bryan D. Payne Signed-off-by: Reiner Sailer --- tools/python/xen/util/security.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/tools/python/xen/util/security.py b/tools/python/xen/util/security.py index 752ab15e08..6a9e393ca7 100644 --- a/tools/python/xen/util/security.py +++ b/tools/python/xen/util/security.py @@ -426,6 +426,15 @@ def get_decision(arg1, arg2): err("Argument type not supported.") ssidref = label2ssidref(arg2[2][1], arg2[1][1]) arg2 = ['ssidref', str(ssidref)] + + # accept only int or string types for domid and ssidref + if isinstance(arg1[1], int): + arg1[1] = str(arg1[1]) + if isinstance(arg2[1], int): + arg2[1] = str(arg2[1]) + if not isinstance(arg1[1], str) or not isinstance(arg2[1], str): + err("Invalid id or ssidref type, string or int required") + try: decision = acm.getdecision(arg1[0], arg1[1], arg2[0], arg2[1]) except: -- 2.30.2